package 对象的比较方式.覆写基类的equals;
/*
 因为所有类都是继承自 Object 的，所以直接覆写即可，不过只能比较相等与否
*/
class Student {
    public String name;
    public int age;

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }
    @Override
    public boolean equals(Object obj) {
        // 自己和自己比较
        if (this == obj) {
            return true;
        }
        // o如果是null对象，或者o不是Card的子类
        if (obj == null || !(obj instanceof Student)) {
            return false;
        }
        // 注意基本类型可以直接比较，但引用类型最好调用其equal方法
        Student o = (Student) obj;
        return this.age == o.age && this.name.equals(o.name);//name为String类型，String已重写equals()
    }
}

public class Test {
    public static void main(String[] args) {
        Student s1=new Student("张三",12);
        Student s2=new Student("张三",12);
        System.out.println(s1.equals(s2));//true
    }
}
